from .EnvParser import *

__all__ = [
    'delete_operate_rootpath', # 删除指定类型下的根路径
]

# 完全信任删除来源（除非软件被人为破坏，懒得加校验了【或者从源头控制】）

def delete_operate_rootpath(paths: List[str]=None, clear=False, op_type = 'apps'):
    '''删除应用程序根路径'''
    obj = ExecEnvParser()
    node: ET.Element = obj.get_xpath_node(f'paths/obj[name={op_type}]')
    if clear: # 调用 node.clear() 方法会将属性一并删除
        for li in list(node.iter(tag='li'))[::-1]:
            node.remove(li)
    else:
        for li in list(node.iter(tag='li'))[::-1]:
            if li.text in paths:
                node.remove(li)
    obj.save()
